/**
 * Exemplo rápido de uso das classes de números aleatórios.
 */
#include <stdlib.h>
#include <iostream>
#include <GaussianDistribution.h>
#include <UniformIntDistribution.h>
#include <UniformRealDistribution.h>
using namespace std;

int main(int argc, char** argv) {

    /* Gerar números reais de uma distribuição gaussiana com parâmetros: média = 0.0 e desviopadrão = 1.0 */
    cout << "\n\nGaussian(0.0, 1.0): ";
    for (int i = 0; i < 10; i++) cout << GaussianDistribution::rand(0, 1) << " ";
    cout << endl;

    /* Gerar números reais de uma distribuição uniforme, na faixa [-5, 8) */
    cout << "\nUniformeReal [-5, 8): ";
    for (int i = 0; i < 10; i++) cout << UniformRealDistribution::rand(-5, 8) << " ";
    cout << endl;

    /* Gerar números inteiros de uma distribuição uniforme, na faixa [-5.0, 8.0) */
    cout << "\nUniformeInt [-5.0, 8.0): ";
    for (int i = 0; i < 10; i++) cout << UniformIntDistribution::rand(-5, 8) << " ";
    cout << endl << endl << endl;

    return (EXIT_SUCCESS);
}
